func() {
  Map companys = {'Alibaba': '阿里巴巴', 'Tencent': '腾讯', 'baidu': '百度'};
  print(companys);

  Map schoolsMap = new Map();
  schoolsMap['first'] = '清华';
  schoolsMap['second'] = '北大';
  schoolsMap['third'] = '复旦';
  // 打印结果 {first: 清华, second: 北大, third: 复旦}
  print(schoolsMap);

  var fruits = new Map();
  fruits["first"] = "apple";
  fruits["second"] = "banana";
  fruits["fifth"] = "orange";
  //换成双引号,换成var 打印结果 {first: apple, second: banana, fifth: orange}
  print(fruits);

  // 指定键值对的参数类型
  var aMap = new Map<int, String>();

  // Map的赋值，中括号中是Key，这里可不是数组
  aMap[1] = '小米';

  //Map中的键值对是唯一的
  //同Set不同，第二次输入的Key如果存在，Value会覆盖之前的数据
  aMap[1] = 'alibaba';

  // map里面的value可以相同
  aMap[2] = 'alibaba';

  // map里面value可以为空字符串
  aMap[3] = '';

  // map里面的value可以为null
  aMap[4] = null;

  print(aMap);

  // 检索Map是否含有某Key
  assert(aMap.containsKey(1));

  //删除某个键值对
  aMap.remove(1);

  print(aMap);

  
}
